namespace JGSY.CMS.LowCode.Platform.Application.DTOs
{
    /// <summary>
    /// 角色数据传输对象
    /// 用于传输角色的基本信息和关联权限
    /// </summary>
    public class RoleDto
    {
        /// <summary>
        /// 角色ID
        /// 角色的唯一标识符
        /// </summary>
        public long Id { get; set; }
        
        /// <summary>
        /// 角色名称
        /// 角色的名称标识
        /// </summary>
        public string Name { get; set; } = string.Empty;
        
        /// <summary>
        /// 角色描述
        /// 对角色功能和用途的详细描述
        /// </summary>
        public string Description { get; set; } = string.Empty;
        
        /// <summary>
        /// 角色权限列表
        /// 该角色拥有的所有权限
        /// </summary>
        public List<PermissionDto> Permissions { get; set; } = new();
    }
}
